SMPL_FOOT_R = [8, 11]
SMPL_FOOT_L = [7, 10]
SMPL_FACE_FORWARD_JOINTS = [2, 1, 17, 16]

# Define a kinematic tree for the skeletal struture
SMPL_BODY_CHAIN = [
    [0, 2, 5, 8, 11],
    [0, 1, 4, 7, 10],
    [0, 3, 6, 9, 12, 15],
    [9, 14, 17, 19, 21],
    [9, 13, 16, 18, 20],
]
SMPL_LEFT_HAND_CHAIN = [
    [20, 22, 23, 24],
    [20, 34, 35, 36],
    [20, 25, 26, 27],
    [20, 31, 32, 33],
    [20, 28, 29, 30],
]
SMPL_RIGHT_HAND_CHAIN = [
    [21, 43, 44, 45],
    [21, 46, 47, 48],
    [21, 40, 41, 42],
    [21, 37, 38, 39],
    [21, 49, 50, 51],
]

SMPL_BODY_BONES = [
    -0.0018,
    -0.2233,
    0.0282,
    0.0695,
    -0.0914,
    -0.0068,
    -0.0677,
    -0.0905,
    -0.0043,
    -0.0025,
    0.1090,
    -0.0267,
    0.0343,
    -0.3752,
    -0.0045,
    -0.0383,
    -0.3826,
    -0.0089,
    0.0055,
    0.1352,
    0.0011,
    -0.0136,
    -0.3980,
    -0.0437,
    0.0158,
    -0.3984,
    -0.0423,
    0.0015,
    0.0529,
    0.0254,
    0.0264,
    -0.0558,
    0.1193,
    -0.0254,
    -0.0481,
    0.1233,
    -0.0028,
    0.2139,
    -0.0429,
    0.0788,
    0.1217,
    -0.0341,
    -0.0818,
    0.1188,
    -0.0386,
    0.0052,
    0.0650,
    0.0513,
    0.0910,
    0.0305,
    -0.0089,
    -0.0960,
    0.0326,
    -0.0091,
    0.2596,
    -0.0128,
    -0.0275,
    -0.2537,
    -0.0133,
    -0.0214,
    0.2492,
    0.0090,
    -0.0012,
    -0.2553,
    0.0078,
    -0.0056,
    0.0840,
    -0.0082,
    -0.0149,
    -0.0846,
    -0.0061,
    -0.0103,
]

SMPL_HYBRIK = [
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    1,
    1,
    1,
    1,
    0,
    0,
    0,
    0,
    0,
    0,
]

SMPL_BODY_PARENTS = [
    0,
    0,
    0,
    0,
    1,
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
    9,
    9,
    12,
    13,
    14,
    16,
    17,
    18,
    19,
]

SMPL_BODY_CHILDS = [
    -1,
    4,
    5,
    6,
    7,
    8,
    9,
    10,
    11,
    -1,
    -2,
    -2,
    15,
    16,
    17,
    -2,
    18,
    19,
    20,
    21,
    -2,
    -2,
]
